version_commands = {
  'sl1.1': {
    'abs': 'abs',
    'acos': 'acos',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cross': 'cross',
    'degrees': 'degrees',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_VertexID': 'gl_VertexID',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'isinf': 'isinf',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'sin': 'sin',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
  },
  'sl4.1': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitStreamVertex': 'EmitStreamVertex',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'EndStreamPrimitive': 'EndStreamPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_NumSamples': 'gl_NumSamples',
    'gl_PatchVerticesIn': 'gl_PatchVerticesIn',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_SampleID': 'gl_SampleID',
    'gl_SampleMask': 'gl_SampleMask',
    'gl_SampleMaskIn': 'gl_SampleMaskIn',
    'gl_SamplePosition': 'gl_SamplePosition',
    'gl_TessCoord': 'gl_TessCoord',
    'gl_TessLevelInner': 'gl_TessLevelInner',
    'gl_TessLevelOuter': 'gl_TessLevelOuter',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'interpolateAtCentroid': 'interpolateAtCentroid',
    'interpolateAtOffset': 'interpolateAtOffset',
    'interpolateAtSample': 'interpolateAtSample',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packDouble2x32': 'packDouble2x32',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGatherOffsets': 'textureGatherOffsets',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureQueryLod': 'textureQueryLod',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackDouble2x32': 'unpackDouble2x32',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
    'usubBorrow': 'usubBorrow',
  },
  'sl4.2': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'atomicCounter': 'atomicCounter',
    'atomicCounterDecrement': 'atomicCounterDecrement',
    'atomicCounterIncrement': 'atomicCounterIncrement',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitStreamVertex': 'EmitStreamVertex',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'EndStreamPrimitive': 'EndStreamPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_NumSamples': 'gl_NumSamples',
    'gl_PatchVerticesIn': 'gl_PatchVerticesIn',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_SampleID': 'gl_SampleID',
    'gl_SampleMask': 'gl_SampleMask',
    'gl_SampleMaskIn': 'gl_SampleMaskIn',
    'gl_SamplePosition': 'gl_SamplePosition',
    'gl_TessCoord': 'gl_TessCoord',
    'gl_TessLevelInner': 'gl_TessLevelInner',
    'gl_TessLevelOuter': 'gl_TessLevelOuter',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'imageAtomicAdd': 'imageAtomicAdd',
    'imageAtomicAnd': 'imageAtomicAnd',
    'imageAtomicCompSwap': 'imageAtomicCompSwap',
    'imageAtomicExchange': 'imageAtomicExchange',
    'imageAtomicMax': 'imageAtomicMax',
    'imageAtomicMin': 'imageAtomicMin',
    'imageAtomicOr': 'imageAtomicOr',
    'imageAtomicXor': 'imageAtomicXor',
    'imageLoad': 'imageLoad',
    'imageStore': 'imageStore',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'interpolateAtCentroid': 'interpolateAtCentroid',
    'interpolateAtOffset': 'interpolateAtOffset',
    'interpolateAtSample': 'interpolateAtSample',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packDouble2x32': 'packDouble2x32',
    'packHalf2x16': 'packHalf2x16',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGatherOffsets': 'textureGatherOffsets',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureQueryLod': 'textureQueryLod',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackDouble2x32': 'unpackDouble2x32',
    'unpackHalf2x16': 'unpackHalf2x16',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
    'usubBorrow': 'usubBorrow',
  },
  'el3.1': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'atomicAdd': 'atomicAdd',
    'atomicAnd': 'atomicAnd',
    'atomicCompSwap': 'atomicCompSwap',
    'atomicCounter': 'atomicCounter',
    'atomicCounterDecrement': 'atomicCounterDecrement',
    'atomicCounterIncrement': 'atomicCounterIncrement',
    'atomicExchange': 'atomicExchange',
    'atomicMax': 'atomicMax',
    'atomicMin': 'atomicMin',
    'atomicOr': 'atomicOr',
    'atomicXor': 'atomicXor',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_GlobalInvocationID': 'gl_GlobalInvocationID',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_LocalInvocationID': 'gl_LocalInvocationID',
    'gl_LocalInvocationIndex': 'gl_LocalInvocationIndex',
    'gl_NumWorkGroups': 'gl_NumWorkGroups',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_VertexID': 'gl_VertexID',
    'gl_WorkGroupID': 'gl_WorkGroupID',
    'gl_WorkGroupSize': 'gl_WorkGroupSize',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'groupMemoryBarrier': 'groupMemoryBarrier',
    'imageAtomicAdd': 'imageAtomicAdd',
    'imageAtomicAnd': 'imageAtomicAnd',
    'imageAtomicCompSwap': 'imageAtomicCompSwap',
    'imageAtomicExchange': 'imageAtomicExchange',
    'imageAtomicMax': 'imageAtomicMax',
    'imageAtomicMin': 'imageAtomicMin',
    'imageAtomicOr': 'imageAtomicOr',
    'imageAtomicXor': 'imageAtomicXor',
    'imageLoad': 'imageLoad',
    'imageSize': 'imageSize',
    'imageStore': 'imageStore',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'memoryBarrierAtomicCounter': 'memoryBarrierAtomicCounter',
    'memoryBarrierBuffer': 'memoryBarrierBuffer',
    'memoryBarrierImage': 'memoryBarrierImage',
    'memoryBarrierShared': 'memoryBarrierShared',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packHalf2x16': 'packHalf2x16',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackHalf2x16': 'unpackHalf2x16',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
    'usubBorrow': 'usubBorrow',
  },
  'el3.0': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_VertexID': 'gl_VertexID',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'intBitsToFloat': 'intBitsToFloat',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packHalf2x16': 'packHalf2x16',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uintBitsToFloat': 'intBitsToFloat',
    'unpackHalf2x16': 'unpackHalf2x16',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
  },
  'sl4.0': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitStreamVertex': 'EmitStreamVertex',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'EndStreamPrimitive': 'EndStreamPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_NumSamples': 'gl_NumSamples',
    'gl_PatchVerticesIn': 'gl_PatchVerticesIn',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_SampleID': 'gl_SampleID',
    'gl_SampleMask': 'gl_SampleMask',
    'gl_SampleMaskIn': 'gl_SampleMaskIn',
    'gl_SamplePosition': 'gl_SamplePosition',
    'gl_TessCoord': 'gl_TessCoord',
    'gl_TessLevelInner': 'gl_TessLevelInner',
    'gl_TessLevelOuter': 'gl_TessLevelOuter',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'interpolateAtCentroid': 'interpolateAtCentroid',
    'interpolateAtOffset': 'interpolateAtOffset',
    'interpolateAtSample': 'interpolateAtSample',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packDouble2x32': 'packDouble2x32',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGatherOffsets': 'textureGatherOffsets',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureQueryLod': 'textureQueryLod',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackDouble2x32': 'unpackDouble2x32',
    'usubBorrow': 'usubBorrow',
  },
  'sl4.3': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'atomicAdd': 'atomicAdd',
    'atomicAnd': 'atomicAnd',
    'atomicCompSwap': 'atomicCompSwap',
    'atomicCounter': 'atomicCounter',
    'atomicCounterDecrement': 'atomicCounterDecrement',
    'atomicCounterIncrement': 'atomicCounterIncrement',
    'atomicExchange': 'atomicExchange',
    'atomicMax': 'atomicMax',
    'atomicMin': 'atomicMin',
    'atomicOr': 'atomicOr',
    'atomicXor': 'atomicXor',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitStreamVertex': 'EmitStreamVertex',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'EndStreamPrimitive': 'EndStreamPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_GlobalInvocationID': 'gl_GlobalInvocationID',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_LocalInvocationID': 'gl_LocalInvocationID',
    'gl_LocalInvocationIndex': 'gl_LocalInvocationIndex',
    'gl_NumSamples': 'gl_NumSamples',
    'gl_NumWorkGroups': 'gl_NumWorkGroups',
    'gl_PatchVerticesIn': 'gl_PatchVerticesIn',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_SampleID': 'gl_SampleID',
    'gl_SampleMask': 'gl_SampleMask',
    'gl_SampleMaskIn': 'gl_SampleMaskIn',
    'gl_SamplePosition': 'gl_SamplePosition',
    'gl_TessCoord': 'gl_TessCoord',
    'gl_TessLevelInner': 'gl_TessLevelInner',
    'gl_TessLevelOuter': 'gl_TessLevelOuter',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'gl_WorkGroupID': 'gl_WorkGroupID',
    'gl_WorkGroupSize': 'gl_WorkGroupSize',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'groupMemoryBarrier': 'groupMemoryBarrier',
    'imageAtomicAdd': 'imageAtomicAdd',
    'imageAtomicAnd': 'imageAtomicAnd',
    'imageAtomicCompSwap': 'imageAtomicCompSwap',
    'imageAtomicExchange': 'imageAtomicExchange',
    'imageAtomicMax': 'imageAtomicMax',
    'imageAtomicMin': 'imageAtomicMin',
    'imageAtomicOr': 'imageAtomicOr',
    'imageAtomicXor': 'imageAtomicXor',
    'imageLoad': 'imageLoad',
    'imageSize': 'imageSize',
    'imageStore': 'imageStore',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'interpolateAtCentroid': 'interpolateAtCentroid',
    'interpolateAtOffset': 'interpolateAtOffset',
    'interpolateAtSample': 'interpolateAtSample',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'memoryBarrierAtomicCounter': 'memoryBarrierAtomicCounter',
    'memoryBarrierBuffer': 'memoryBarrierBuffer',
    'memoryBarrierImage': 'memoryBarrierImage',
    'memoryBarrierShared': 'memoryBarrierShared',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packDouble2x32': 'packDouble2x32',
    'packHalf2x16': 'packHalf2x16',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGatherOffsets': 'textureGatherOffsets',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureQueryLevels': 'textureQueryLevels',
    'textureQueryLod': 'textureQueryLod',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackDouble2x32': 'unpackDouble2x32',
    'unpackHalf2x16': 'unpackHalf2x16',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
    'usubBorrow': 'usubBorrow',
  },
  'sl1.3': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_VertexID': 'gl_VertexID',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
  },
  'sl1.2': {
    'abs': 'abs',
    'acos': 'acos',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cross': 'cross',
    'degrees': 'degrees',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_VertexID': 'gl_VertexID',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'isinf': 'isinf',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'sin': 'sin',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'transpose': 'transpose',
  },
  'sl4.4': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'atomicAdd': 'atomicAdd',
    'atomicAnd': 'atomicAnd',
    'atomicCompSwap': 'atomicCompSwap',
    'atomicCounter': 'atomicCounter',
    'atomicCounterDecrement': 'atomicCounterDecrement',
    'atomicCounterIncrement': 'atomicCounterIncrement',
    'atomicExchange': 'atomicExchange',
    'atomicMax': 'atomicMax',
    'atomicMin': 'atomicMin',
    'atomicOr': 'atomicOr',
    'atomicXor': 'atomicXor',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitStreamVertex': 'EmitStreamVertex',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'EndStreamPrimitive': 'EndStreamPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_GlobalInvocationID': 'gl_GlobalInvocationID',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_LocalInvocationID': 'gl_LocalInvocationID',
    'gl_LocalInvocationIndex': 'gl_LocalInvocationIndex',
    'gl_NumSamples': 'gl_NumSamples',
    'gl_NumWorkGroups': 'gl_NumWorkGroups',
    'gl_PatchVerticesIn': 'gl_PatchVerticesIn',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_SampleID': 'gl_SampleID',
    'gl_SampleMask': 'gl_SampleMask',
    'gl_SampleMaskIn': 'gl_SampleMaskIn',
    'gl_SamplePosition': 'gl_SamplePosition',
    'gl_TessCoord': 'gl_TessCoord',
    'gl_TessLevelInner': 'gl_TessLevelInner',
    'gl_TessLevelOuter': 'gl_TessLevelOuter',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'gl_WorkGroupID': 'gl_WorkGroupID',
    'gl_WorkGroupSize': 'gl_WorkGroupSize',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'groupMemoryBarrier': 'groupMemoryBarrier',
    'imageAtomicAdd': 'imageAtomicAdd',
    'imageAtomicAnd': 'imageAtomicAnd',
    'imageAtomicCompSwap': 'imageAtomicCompSwap',
    'imageAtomicExchange': 'imageAtomicExchange',
    'imageAtomicMax': 'imageAtomicMax',
    'imageAtomicMin': 'imageAtomicMin',
    'imageAtomicOr': 'imageAtomicOr',
    'imageAtomicXor': 'imageAtomicXor',
    'imageLoad': 'imageLoad',
    'imageSize': 'imageSize',
    'imageStore': 'imageStore',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'interpolateAtCentroid': 'interpolateAtCentroid',
    'interpolateAtOffset': 'interpolateAtOffset',
    'interpolateAtSample': 'interpolateAtSample',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'memoryBarrierAtomicCounter': 'memoryBarrierAtomicCounter',
    'memoryBarrierBuffer': 'memoryBarrierBuffer',
    'memoryBarrierImage': 'memoryBarrierImage',
    'memoryBarrierShared': 'memoryBarrierShared',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packDouble2x32': 'packDouble2x32',
    'packHalf2x16': 'packHalf2x16',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGatherOffsets': 'textureGatherOffsets',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureQueryLevels': 'textureQueryLevels',
    'textureQueryLod': 'textureQueryLod',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackDouble2x32': 'unpackDouble2x32',
    'unpackHalf2x16': 'unpackHalf2x16',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
    'usubBorrow': 'usubBorrow',
  },
  'sl3.3': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'intBitsToFloat': 'intBitsToFloat',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uintBitsToFloat': 'intBitsToFloat',
  },
  'sl4.5': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'atomicAdd': 'atomicAdd',
    'atomicAnd': 'atomicAnd',
    'atomicCompSwap': 'atomicCompSwap',
    'atomicCounter': 'atomicCounter',
    'atomicCounterDecrement': 'atomicCounterDecrement',
    'atomicCounterIncrement': 'atomicCounterIncrement',
    'atomicExchange': 'atomicExchange',
    'atomicMax': 'atomicMax',
    'atomicMin': 'atomicMin',
    'atomicOr': 'atomicOr',
    'atomicXor': 'atomicXor',
    'barrier': 'barrier',
    'bitCount': 'bitCount',
    'bitfieldExtract': 'bitfieldExtract',
    'bitfieldInsert': 'bitfieldInsert',
    'bitfieldReverse': 'bitfieldReverse',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitStreamVertex': 'EmitStreamVertex',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'EndStreamPrimitive': 'EndStreamPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'findLSB': 'findLSB',
    'findMSB': 'findMSB',
    'floatBitsToInt': 'floatBitsToInt',
    'floatBitsToUint': 'floatBitsToInt',
    'floor': 'floor',
    'fma': 'fma',
    'fract': 'fract',
    'frexp': 'frexp',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_CullDistance': 'gl_CullDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_GlobalInvocationID': 'gl_GlobalInvocationID',
    'gl_HelperInvocation': 'gl_HelperInvocation',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_LocalInvocationID': 'gl_LocalInvocationID',
    'gl_LocalInvocationIndex': 'gl_LocalInvocationIndex',
    'gl_NumSamples': 'gl_NumSamples',
    'gl_NumWorkGroups': 'gl_NumWorkGroups',
    'gl_PatchVerticesIn': 'gl_PatchVerticesIn',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_SampleID': 'gl_SampleID',
    'gl_SampleMask': 'gl_SampleMask',
    'gl_SampleMaskIn': 'gl_SampleMaskIn',
    'gl_SamplePosition': 'gl_SamplePosition',
    'gl_TessCoord': 'gl_TessCoord',
    'gl_TessLevelInner': 'gl_TessLevelInner',
    'gl_TessLevelOuter': 'gl_TessLevelOuter',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'gl_WorkGroupID': 'gl_WorkGroupID',
    'gl_WorkGroupSize': 'gl_WorkGroupSize',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'groupMemoryBarrier': 'groupMemoryBarrier',
    'imageAtomicAdd': 'imageAtomicAdd',
    'imageAtomicAnd': 'imageAtomicAnd',
    'imageAtomicCompSwap': 'imageAtomicCompSwap',
    'imageAtomicExchange': 'imageAtomicExchange',
    'imageAtomicMax': 'imageAtomicMax',
    'imageAtomicMin': 'imageAtomicMin',
    'imageAtomicOr': 'imageAtomicOr',
    'imageAtomicXor': 'imageAtomicXor',
    'imageLoad': 'imageLoad',
    'imageSamples': 'imageSamples',
    'imageSize': 'imageSize',
    'imageStore': 'imageStore',
    'imulExtended': 'umulExtended',
    'intBitsToFloat': 'intBitsToFloat',
    'interpolateAtCentroid': 'interpolateAtCentroid',
    'interpolateAtOffset': 'interpolateAtOffset',
    'interpolateAtSample': 'interpolateAtSample',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'ldexp': 'ldexp',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'memoryBarrier': 'memoryBarrier',
    'memoryBarrierAtomicCounter': 'memoryBarrierAtomicCounter',
    'memoryBarrierBuffer': 'memoryBarrierBuffer',
    'memoryBarrierImage': 'memoryBarrierImage',
    'memoryBarrierShared': 'memoryBarrierShared',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'packDouble2x32': 'packDouble2x32',
    'packHalf2x16': 'packHalf2x16',
    'packSnorm2x16': 'packUnorm',
    'packSnorm4x8': 'packUnorm',
    'packUnorm': 'packUnorm',
    'packUnorm2x16': 'packUnorm',
    'packUnorm4x8': 'packUnorm',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGather': 'textureGather',
    'textureGatherOffset': 'textureGatherOffset',
    'textureGatherOffsets': 'textureGatherOffsets',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureQueryLevels': 'textureQueryLevels',
    'textureQueryLod': 'textureQueryLod',
    'textureSamples': 'textureSamples',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
    'uaddCarry': 'uaddCarry',
    'uintBitsToFloat': 'intBitsToFloat',
    'umulExtended': 'umulExtended',
    'unpackDouble2x32': 'unpackDouble2x32',
    'unpackHalf2x16': 'unpackHalf2x16',
    'unpackSnorm2x16': 'unpackUnorm',
    'unpackSnorm4x8': 'unpackUnorm',
    'unpackUnorm': 'unpackUnorm',
    'unpackUnorm2x16': 'unpackUnorm',
    'unpackUnorm4x8': 'unpackUnorm',
    'usubBorrow': 'usubBorrow',
  },
  'sl1.5': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'determinant': 'determinant',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'EmitVertex': 'EmitVertex',
    'EndPrimitive': 'EndPrimitive',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_InvocationID': 'gl_InvocationID',
    'gl_Layer': 'gl_Layer',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_PrimitiveID': 'gl_PrimitiveID',
    'gl_PrimitiveIDIn': 'gl_PrimitiveIDIn',
    'gl_VertexID': 'gl_VertexID',
    'gl_ViewportIndex': 'gl_ViewportIndex',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
  },
  'sl1.4': {
    'abs': 'abs',
    'acos': 'acos',
    'acosh': 'acosh',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'asinh': 'asinh',
    'atan': 'atan',
    'atanh': 'atanh',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cosh': 'cosh',
    'cross': 'cross',
    'degrees': 'degrees',
    'dFdx': 'dFdx',
    'dFdxCoarse': 'dFdx',
    'dFdxFine': 'dFdx',
    'dFdy': 'dFdy',
    'dFdyCoarse': 'dFdy',
    'dFdyFine': 'dFdy',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floor': 'floor',
    'fract': 'fract',
    'fwidth': 'fwidth',
    'fwidthCoarse': 'fwidth',
    'fwidthFine': 'fwidth',
    'gl_ClipDistance': 'gl_ClipDistance',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FragDepth': 'gl_FragDepth',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_InstanceID': 'gl_InstanceID',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'gl_VertexID': 'gl_VertexID',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'inverse': 'inverse',
    'inversesqrt': 'inversesqrt',
    'isinf': 'isinf',
    'isnan': 'isnan',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'modf': 'modf',
    'noise': 'noise',
    'noise1': 'noise',
    'noise2': 'noise',
    'noise3': 'noise',
    'noise4': 'noise',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'outerProduct': 'outerProduct',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'round': 'round',
    'roundEven': 'roundEven',
    'sign': 'sign',
    'sin': 'sin',
    'sinh': 'sinh',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
    'tanh': 'tanh',
    'texelFetch': 'texelFetch',
    'texelFetchOffset': 'texelFetchOffset',
    'texture': 'texture',
    'textureGrad': 'textureGrad',
    'textureGradOffset': 'textureGradOffset',
    'textureLod': 'textureLod',
    'textureLodOffset': 'textureLodOffset',
    'textureOffset': 'textureOffset',
    'textureProj': 'textureProj',
    'textureProjGrad': 'textureProjGrad',
    'textureProjGradOffset': 'textureProjGradOffset',
    'textureProjLod': 'textureProjLod',
    'textureProjLodOffset': 'textureProjLodOffset',
    'textureProjOffset': 'textureProjOffset',
    'textureSize': 'textureSize',
    'transpose': 'transpose',
    'trunc': 'trunc',
  },
  'el1.1': {
    'abs': 'abs',
    'acos': 'acos',
    'all': 'all',
    'any': 'any',
    'asin': 'asin',
    'atan': 'atan',
    'ceil': 'ceil',
    'clamp': 'clamp',
    'cos': 'cos',
    'cross': 'cross',
    'degrees': 'degrees',
    'distance': 'distance',
    'dot': 'dot',
    'equal': 'equal',
    'exp': 'exp',
    'exp2': 'exp2',
    'faceforward': 'faceforward',
    'floor': 'floor',
    'fract': 'fract',
    'gl_FragCoord': 'gl_FragCoord',
    'gl_FrontFacing': 'gl_FrontFacing',
    'gl_PointCoord': 'gl_PointCoord',
    'gl_PointSize': 'gl_PointSize',
    'gl_Position': 'gl_Position',
    'greaterThan': 'greaterThan',
    'greaterThanEqual': 'greaterThanEqual',
    'inversesqrt': 'inversesqrt',
    'length': 'length',
    'lessThan': 'lessThan',
    'lessThanEqual': 'lessThanEqual',
    'log': 'log',
    'log2': 'log2',
    'matrixCompMult': 'matrixCompMult',
    'max': 'max',
    'min': 'min',
    'mix': 'mix',
    'mod': 'mod',
    'normalize': 'normalize',
    'not': 'not',
    'notEqual': 'notEqual',
    'pow': 'pow',
    'radians': 'radians',
    'reflect': 'reflect',
    'refract': 'refract',
    'sign': 'sign',
    'sin': 'sin',
    'smoothstep': 'smoothstep',
    'sqrt': 'sqrt',
    'step': 'step',
    'tan': 'tan',
  },
}
